#include <stdio.h>
#include <stdlib.h>
#include <string.h>

/*
和结构体不同 共用体 共享一片最大的类型空间

共用体的时候 单次只使用公用体内的一个参数
并且需要注意 使用完成后 需要清空
0000 0000
0000 


*/

typedef union un_stu
{
    long int a1;
    double a2;
}un_stu;


int main(int argc, char const *argv[])
{
    un_stu s1;
    s1.a1 = 50;
    printf("%d\n" , s1.a1);
    printf("%f\n" , s1.a2);

    // 清空操作
    // memset(&s1 , 0 , sizeof(un_stu));

    s1.a2 = 3.1415926;
    printf("%d\n" , s1.a1);
    printf("%f\n" , s1.a2);

    // 
    s1.a1 = 12345678;
    printf("%d\n" , s1.a1);
    printf("%f\n" , s1.a2);
    return 0;
}

